package lesson01;

import java.io.*;
import java.util.Scanner;

public class Demo0112 {
    public static void main(String[] args) throws IOException {
        //将一个文件复制到另一个文件
        Scanner scanner=new Scanner(System.in);
        System.out.println("请输入要复制的文件的路径:");
        String sourcePath=scanner.nextLine();
        File sourceFile=new File(sourcePath);
        if(!sourceFile.exists()){
            System.out.println("不存在该文件");
            return;
        }
        if(!sourceFile.isFile()){
            System.out.println("不是普通文件");
            return;
        }
        System.out.println("请输入目标文件");
        String targetPath=scanner.nextLine();
        File targetFile=new File(targetPath);
        if(!targetFile.getParentFile().exists()){
            System.out.println("父目录不存在");
            return;
        }
        targetFile.createNewFile();
        scanner.close();
        try (FileInputStream fileInputStream=new FileInputStream(sourceFile);
        FileOutputStream fileOutputStream=new FileOutputStream(targetFile)){
            byte[] bytes=new byte[1024];
            while (true){
                int len=fileInputStream.read(bytes);
                if(len==-1) break;
                fileOutputStream.write(bytes,0,len);

            }
            System.out.println(sourceFile.getCanonicalFile()+"内容已经复制到"+targetFile.getCanonicalFile());
        } catch (IOException e) {
            throw new RuntimeException(e);
        }

    }
}
